home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Belgian Amiga Club - ADF Collection
/
BS1 part 26.zip
/
BS1 part 26
/
Powervisor v1.10b disk2.adf
/
CancelDouble.c
< prev
next >
Wrap
C/C++ Source or Header
|
1991-09-10
|
983b
|
54 lines
/* This little program removes all double lines from a sorted file */
/* Author : Jorrit Tyberghein Wed Jul 3 17:35:18 1991 */
#include <stdio.h>
main (int argc, char *argv[])
{
FILE *in,*out;
char buf1[1024],buf2[1024];
char *curbuf,*prevbuf,*swap;
if (argc != 3)
{
printf ("Usage : canceldouble <inputfile> <outputfile>\n");
exit (0);
}
if (!(in = fopen (argv[1],"r")))
{
printf ("Error opening file %s for reading !\n",argv[1]);
exit (5);
}
if (!(out = fopen (argv[2],"w")))
{
printf ("Error opening file %s for writing !\n",argv[2]);
fclose (in);
exit (5);
}
curbuf = buf1;
prevbuf = buf2;
prevbuf[0] = 0;
while (fgets (curbuf,1023,in))
{
curbuf[1023] = 0;
if (strcmp (curbuf,prevbuf))
{
/* Previous line is different from current line */
fputs (curbuf,out);
/* Swap the two buffers */
swap = curbuf;
curbuf = prevbuf;
prevbuf = swap;
}
}
fclose (in);
fclose (out);
}